home *** CD-ROM | disk | FTP | other *** search
/ Ahoy 1985 May / Ahoy_Magazine_85-05_1985_Double_L.d64 / rupert 1 (.txt) < prev    next >
Commodore BASIC  |  2022-10-26  |  1KB  |  59 lines

  1. 1 if qq=1 then 140
  2. 2 if qq=2 then end
  3. 4 :rem
  4. 5 :rem -- save screen to disk --
  5. 6 :rem =rupert-report=listing-1=
  6. 7 :rem
  7. 10 def fnh(x)=int(x/256) :rem msb of x
  8. 20 def fnl(x)=x-256*fnh(x) :rem lsb
  9. 25 :rem
  10. 30 gosub 500  :rem: put image on screen
  11. 35 :rem
  12. 40 flnam$="@:scrn1"
  13. 45 fa$=flnam$
  14. 50 saddr=1024 : eaddr=2024
  15. 60 gosub 220  :rem: save screen memory
  16. 65 :rem
  17. 70 flnam$="@:colr1"
  18. 75 fb$=flnam$
  19. 80 saddr=55296 : eaddr=56296
  20. 90 gosub 220  :rem: save color memory
  21. 100 :rem -- restore screen --
  22. 110 print chr$(147):print"press any key to restore screen"
  23. 120 get aa$ : if aa$="" then 120
  24. 130 qq=1 : flnam$=fb$ : goto 600
  25. 140 qq=2 : flnam$=fa$ : goto 600
  26. 150 rem =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  27. 160 rem   use kernal 'save' routine
  28. 170 rem   to save memory from (saddr)
  29. 180 rem   to (eaddr-1) in file "flnam$"
  30. 190 rem =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  31. 200 rem
  32. 210 rem
  33. 220 areg=780 : xreg=781 : yreg=782
  34. 230 open 8,8,8,flnam$
  35. 240 sve=65496   :rem $ffd8
  36. 250 zptr=251    :rem $fb (zero page)
  37. 260 poke zptr+1,fnh(saddr)
  38. 270 poke zptr,fnl(saddr)
  39. 280 poke areg,zptr
  40. 290 poke xreg,fnl(eaddr)
  41. 300 poke yreg,fnh(eaddr)
  42. 310 sys sve
  43. 320 close 8
  44. 330 return
  45. 494 :rem
  46. 495 :rem << fill screen >>
  47. 500 for mem=1024 to 2022 step 3
  48. 510 print chr$(168)chr$(127)chr$(168);
  49. 520 poke mem+54272,rnd(0)*16
  50. 530 next
  51. 540 return
  52. 594 :rem -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  53. 595 :rem  load flnam$ back into memory
  54. 596 :rem  execution resumes at start
  55. 597 :rem          of program
  56. 598 :rem -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  57. 600 load flnam$,8,1
  58. 1000 open2,8,2,"rup1,s,w":cmd2:list-999
  59.